class K {
    privateMethod() {
    }
    m() {
        let { priv: a , prot: b  } = this; // ok
        let { priv , prot  } = new K(); // ok
    }
}
class C extends K {
    m2() {
        let { priv: a  } = this; // error
        let { prot: b  } = this; // ok
    }
}
let k = new K();
let { priv  } = k; // error
let { prot  } = k; // error
let { privateMethod  } = k; // error
let { priv: a , prot: b , privateMethod: pm  } = k; // error
function f({ priv , prot , privateMethod  }) {
}
